package com.micro.service.auth.server.redis;

import java.util.concurrent.TimeUnit;

/**
 * @author xiucai
 * @description
 * @date 2018/12/17 0017 17:15
 */
public interface RedisManager {



    /**
     * 保存验证码
     *
     * @param mobile     前缀 + 手机号
     * @param code       验证码
     * @param expireTime 保存时间
     * @param unit       保存得单位时间
     */
    void saveVcode(String mobile, String code, int expireTime, TimeUnit unit);

    /**
     * 获取验证码
     *
     * @param mobile SmsCodePrefix + 手机号
     * @return 验证码
     */
    Object getVcode(String mobile);


    /**
     * 删除验证码
     *
     * @param mobile
     */
    void removeVcode(String mobile);


    /**
     * 记录器，每次加1
     *
     * @param redisKey
     */
    long incr(String redisKey);

    /**
     * 设置过期时间
     * @param time
     * @param key
     */
    void expire(String key, int time);
}
